The invention relates to a method and apparatus for storing information, and particularly to a data storage system which uses a multiple-level cache arrangement wherein data may be initially in a secondary cache and is moved from a secondary cache to a primary cache when the data is first requested by a system.
Because immediate access to information has become a necessity in virtually all fields of endeavor, including business, finance and science, telecommunication system usage is increasing at a substantial rate. With the increase in overall usage, the amount of information generated by the telecommunication systems has also exploded. Typically, each call made on a telecommunication system generates a variety of information, for example, billing and other information. For example, one telephone call may involve an Internet service provider, a wireless carrier, a local exchange carrier and a long-distance carrier among other entities. Each of these entities may have its own way of pricing their portion of a telephone call involving equipment charges, service charges, access charges and other charges appearing on one or several bills to a subscriber. All of this information can be analyzed for a variety of purposes such as billing, fraud control, detecting trends and characteristics of each telephone number (directory number or other billing number or indicia of a subscriber) in a telecommunication system. For each of these purposes, a processor in the analysis system accesses the call information, e.g., call detail, specifying various call parameters. For example, the analysis system may want to analyze the 100 most recent calls for a particular telephone number. The call detail information, which is stored in the telecommunication system, is then gathered from the database and sent to the analysis system requesting the information. The gathering process takes time and resources. Furthermore, as the amount of information in storage increases, the amount of time needed to search for requested information also increases. Thus, there is a need for a data management system which efficiently stores data in a manner that allows for faster searching for requested data.
According to one embodiment of the invention, a method and data management system stores data in a multiple-level cache arrangement of a database. Data may be initially stored in a secondary cache (which may be the database). When data is requested, the data is moved from the secondary cache to a primary cache. When a new search for data is initiated, the search begins with the primary cache and then proceeds to the secondary cache, if necessary.
According to one embodiment of the invention in a telecommunications system application, a method and apparatus for storing data in a multiple-level cache arrangement of a database is disclosed. Initially, all data for telephone numbers is stored in a secondary cache (which may be the database). When a request for data is received, the requested data is moved from the secondary cache to a primary cache, wherein when subsequent requests for data are received, the primary cache is searched before the secondary cache. Finally, all data in the primary cache is periodically merged back into the secondary caches so that both the primary and secondary cache reflect similar information and old data may be purged.